package com.th.supcom.pds.phamapply.client.service;

import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;
import com.th.supcom.framework.organization.web.gwt.client.model.OrganizationModel;
import com.th.supcom.pds.phamapply.client.model.InpPhamApplyDetailModel;
import com.th.supcom.pds.phamapply.client.model.InpPhamDispenseDetailModel;
import com.th.supcom.pds.phamapply.client.model.InpPhamDispenseResultModel;

/**
 * InpPhamApplyMaster 异步接口.
 * 
 * 住院摆药请领单.
 */
public interface InpPhamDispenseDetailRpcAsync
{

    void getInpPhamApplyNurseUnit (String deptCode, AsyncCallback <List <InpPhamApplyDetailModel>> callback);
    void getInpPhamCancelNurseUnit (InpPhamApplyDetailModel model, AsyncCallback <List <InpPhamApplyDetailModel>> callback);

    void getApplyDetailByApplyNoAndDispensary (String applyNo, String dispensary,
                                               AsyncCallback <List <InpPhamApplyDetailModel>> callback);

    void cancelApplyMaster (String  applyNo, String dispensary,AsyncCallback <Void>callback);

    void execPhamApplySheet (List <InpPhamApplyDetailModel> applyList, String operator, String dispensary,
                             AsyncCallback <Void> callback);

    void findInpPhamDispenseNurse (String dispensary, AsyncCallback <List <InpPhamDispenseDetailModel>> callback);

    void getInpCheckDispenseDetail (String applyNo, String dispensary, String nurseUnit,
                                    AsyncCallback <InpPhamDispenseResultModel> callback);

    void verifyDispenseDetail (InpPhamDispenseResultModel inpPhamDispenseResultModel, String operator, String dispensary,
                               AsyncCallback <Void> callback);

    void findAvailableDispensary (String phamStdCode, AsyncCallback <List <OrganizationModel>> callback);
    
    void getInpCheckDispenseDetail (InpPhamDispenseDetailModel inpPhamDispenseDetail, AsyncCallback <List <InpPhamDispenseDetailModel>> callback);
    /** 公司版权信息. */
    public static final String copyright = "Copyright 2014, TH Supcom Corporation";

    /** 提交路径. */
    public static final String SCC_BRANCH = "$URL$";

    /** 提交日期. */
    public static final String SCC_LAST_MODIFICATION_DATE = "$Date$";

    /** 最终修改人员. */
    public static final String SCC_LAST_MODIFIER_NAME = "$Author$";

    /** 最终版本号. */
    public static final String SCC_REVISION = "$Revision$";
}